package co.fitstart.coach.service;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import co.fitstart.entity.coach.CoachSigninRecord;
import co.fitstart.entity.coach.CoachSigninStatistic;
import co.fitstart.entity.principal.Principal;

public interface CourseHourService {
    
    /**
     * 
     * @param coach
     * @return
     */
    public List<CoachSigninStatistic> listCoachSigninStatistic(Principal coach);
    
    /**
     * 
     * @param statisticId
     * @return
     */
    public CoachSigninStatistic loadCoachSigninStatistic(Long statisticId);
    
    /**
     * 
     * @param coach
     * @param month
     * @return
     */
    public List<CoachSigninRecord> listCoachSigninRecord(Principal coach, String month);

    /**
     * 
     * @param coach
     * @return
     */
    public Map<String, BigDecimal> listCoachExperienceSigninStatistic(Principal coach);

    /**
     * 
     * @param coach
     * @param month
     * @return
     */
    public BigDecimal getCoachExperienceSigninStatistic(Principal coach, String month);

    /**
     * 统计赠课及已成单体验课，教练端课时记录隐藏
     * @param coach
     * @return
     */
    public Map<String, BigDecimal> listCoachHideStatistic(Principal coach);

    /**
     * 统计赠课及已成单体验课，教练端课时记录隐藏
     * @param coach
     * @param month
     * @return
     */
    public BigDecimal getCoachHideStatistic(Principal coach, String month);
}
